// index/pages/questionBankDesign/questionBankDesign.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    // 随机练习题数
    randomQuestionCount: 20,
    
    // 夜间模式刷题
    nightMode: true,
    
    // 自动下一题
    autoNextQuestion: true,
    
    // 自动保存答案
    autoSaveAnswer: true,
    
    // 错题重练分页试题数
    wrongQuestionCount: 20,
    
    // 试题字体大小
    fontSize: 20,
    
    // 试题文本对齐方式
    textAlignment: '智能'
  },

  /**
   * 切换题库
   */
  switchQuestionBank() {
    wx.showActionSheet({
      itemList: ['政治题库', '数学题库', '英语题库', '专业课题库'],
      success: (res) => {
        const questionBanks = ['政治题库', '数学题库', '英语题库', '专业课题库'];
        wx.showToast({
          title: `已切换到${questionBanks[res.tapIndex]}`,
          icon: 'success'
        });
      }
    });
  },

  /**
   * 设置随机练习题数
   */
  setRandomQuestionCount() {
    wx.showActionSheet({
      itemList: ['10', '15', '20', '25', '30'],
      success: (res) => {
        const counts = [10, 15, 20, 25, 30];
        this.setData({
          randomQuestionCount: counts[res.tapIndex]
        });
        wx.showToast({
          title: '设置成功',
          icon: 'success'
        });
      }
    });
  },

  /**
   * 切换夜间模式
   */
  toggleNightMode(e) {
    this.setData({
      nightMode: e.detail.value
    });
    wx.showToast({
      title: e.detail.value ? '已开启夜间模式' : '已关闭夜间模式',
      icon: 'success'
    });
  },

  /**
   * 切换自动下一题
   */
  toggleAutoNextQuestion(e) {
    this.setData({
      autoNextQuestion: e.detail.value
    });
    wx.showToast({
      title: e.detail.value ? '已开启自动下一题' : '已关闭自动下一题',
      icon: 'success'
    });
  },

  /**
   * 切换自动保存答案
   */
  toggleAutoSaveAnswer(e) {
    this.setData({
      autoSaveAnswer: e.detail.value
    });
    wx.showToast({
      title: e.detail.value ? '已开启自动保存' : '已关闭自动保存',
      icon: 'success'
    });
  },

  /**
   * 设置错题重练分页试题数
   */
  setWrongQuestionCount() {
    wx.showActionSheet({
      itemList: ['10', '15', '20', '25', '30'],
      success: (res) => {
        const counts = [10, 15, 20, 25, 30];
        this.setData({
          wrongQuestionCount: counts[res.tapIndex]
        });
        wx.showToast({
          title: '设置成功',
          icon: 'success'
        });
      }
    });
  },

  /**
   * 设置字体大小
   */
  setFontSize() {
    wx.showActionSheet({
      itemList: ['16', '18', '20', '22', '24'],
      success: (res) => {
        const sizes = [16, 18, 20, 22, 24];
        this.setData({
          fontSize: sizes[res.tapIndex]
        });
        wx.showToast({
          title: '字体大小设置成功',
          icon: 'success'
        });
      }
    });
  },

  /**
   * 设置文本对齐方式
   */
  setTextAlignment() {
    wx.showActionSheet({
      itemList: ['智能', '左对齐', '居中', '右对齐'],
      success: (res) => {
        const alignments = ['智能', '左对齐', '居中', '右对齐'];
        this.setData({
          textAlignment: alignments[res.tapIndex]
        });
        wx.showToast({
          title: '对齐方式设置成功',
          icon: 'success'
        });
      }
    });
  },

  /**
   * 清理做题页面缓存
   */
  clearPageCache() {
    wx.showModal({
      title: '确认清理',
      content: '确定要清理做题页面缓存吗？',
      success: (res) => {
        if (res.confirm) {
          wx.showLoading({
            title: '清理中...'
          });
          
          setTimeout(() => {
            wx.hideLoading();
            wx.showToast({
              title: '缓存清理成功',
              icon: 'success'
            });
          }, 1500);
        }
      }
    });
  },

  /**
   * 清空题库做题记录
   */
  clearPracticeRecords() {
    wx.showModal({
      title: '确认清空',
      content: '确定要清空所有做题记录吗？此操作不可恢复。',
      confirmText: '清空',
      confirmColor: '#EF4444',
      success: (res) => {
        if (res.confirm) {
          wx.showLoading({
            title: '清空中...'
          });
          
          setTimeout(() => {
            wx.hideLoading();
            wx.showToast({
              title: '记录清空成功',
              icon: 'success'
            });
          }, 2000);
        }
      }
    });
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    console.log('题库设置页面加载');
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {
    return {
      title: '题库设置',
      path: '/index/pages/questionBankDesign/questionBankDesign'
    };
  }
})